pub fn dp_rec_mc(amount: u32) -> u32 {
    let moneys = vec![100, 50, 30, 20, 10, 5, 2, 1];
    let mut rest = amount;
    let mut count = Vec::new();
    let mut ans = 0;

    for &money in &moneys {
        while rest >= money {
            rest -= money;
            count.push(money);
            ans += 1;
        }
    }
    ans
}
